package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.system.dto.SignInRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.AudiMapper;
import com.ruoyi.system.domain.Audi;
import com.ruoyi.system.service.IAudiService;
import com.ruoyi.system.dto.SignInRequest;
import com.ruoyi.system.dto.AudiDTO;
/**
 * 观众报名Service业务层处理
 * 
 * @author saruri
 * @date 2024-06-18
 */
@Service
public class AudiServiceImpl implements IAudiService 
{
    @Autowired
    private AudiMapper audiMapper;

    /**
     * 查询观众报名
     * 
     * @param id 观众报名主键
     * @return 观众报名
     */
    @Override
    public Audi selectAudiById(Long id)
    {
        return audiMapper.selectAudiById(id);
    }

    @Override
    public int updateAudiByUserIdAndTvId(Audi audi) {
        return audiMapper.updateAudiByUserIdAndTvId(audi);
    }
    @Override
    public Audi selectAudiByUserIdAndTvId(Long userId, Long tvId) {
        return audiMapper.selectAudiByUserIdAndTvId(userId, tvId);
    }

    @Override
    public  List<AudiDTO>  selectAudiByUserId(Long userId) {
        return audiMapper.selectAudiByUserId(userId);
    }

    /**
     * 签到
     *
     * @param signInRequest 观众报名信息
     * @return 结果
     */
    @Override
    public int signIn(SignInRequest signInRequest) {
        return audiMapper.signIn(signInRequest);
    }
    /**
     * 查询观众报名列表
     *
     * @param audi 观众报名
     * @return 观众报名
     */
    @Override
    public List<Audi> selectAudiList(Audi audi)
    {
        return audiMapper.selectAudiList(audi);
    }

    /**
     * 新增观众报名
     * 
     * @param audi 观众报名
     * @return 结果
     */
    @Override
    public int insertAudi(Audi audi)
    {
        audi.setCreateTime(DateUtils.getNowDate());
        return audiMapper.insertAudi(audi);
    }

    /**
     * 修改观众报名
     * 
     * @param audi 观众报名
     * @return 结果
     */
    @Override
    public int updateAudi(Audi audi)
    {
        return audiMapper.updateAudi(audi);
    }

    /**
     * 批量删除观众报名
     * 
     * @param ids 需要删除的观众报名主键
     * @return 结果
     */
    @Override
    public int deleteAudiByIds(Long[] ids)
    {
        return audiMapper.deleteAudiByIds(ids);
    }

    /**
     * 删除观众报名信息
     * 
     * @param id 观众报名主键
     * @return 结果
     */
    @Override
    public int deleteAudiById(Long id)
    {
        return audiMapper.deleteAudiById(id);
    }
}
